-
08-07-2019 - |
質問
従来のリレーショナルデータベース( PostgreSQL を使用)を学び、いくつかの研究を行っています。新しいタイプのデータベース。 CouchDB 、霧雨、および Scalaris をいくつか挙げて、対処すべき次のデータベース技術は?
解決
次世代のSQLではなく、次世代のデータベースと言います。
SQLは、リレーショナルデータベースを照会および操作するための言語です。 SQLは国際標準によって規定されています。標準は改訂されていますが、常にリレーショナルデータベースパラダイム内で機能するようです。
現在注目されているいくつかの新しいデータストレージテクノロジーを次に示します。
- CouchDB は非リレーショナルデータベースです。彼らはそれをドキュメント指向データベースと呼んでいます。
- Amazon SimpleDB も非リレーショナルデータベースであり、 Webサービスを介した分散方法。 Amazonには、 Dynamo と呼ばれる分散型キーバリューストアもあり、S3サービスの一部を強化しています。
- Dynomite および Kai は、Amazon Dynamoに触発されたオープンソースソリューションです。
- BigTable は、独自のデータストレージソリューションです。 Googleにより、Googleファイルシステムテクノロジーを使用して実装されています。 GoogleのMapReduceフレームワークはBigTableを使用しています。
- Hadoop は、GoogleのMapReduceに触発されたオープンソーステクノロジーです。 、および同様のニーズに対応し、非常に大規模なデータストアの作業を分散します。
- Scalaris は分散トランザクションキー/バリューストア。また、リレーショナルではなく、SQLを使用しません。ドイツのベルリンにあるZuse Instituteの研究プロジェクトです。
- RDF は、セマンティックデータを格納するための標準です。データとメタデータは交換可能です。 SQLに表面的に似た独自のクエリ言語SPARQLがありますが、実際にはまったく異なります。
- Vertica は、分散用に設計された非常にスケーラブルな列指向の分析データベースです。 (グリッド)アーキテクチャ。リレーショナルおよびSQL準拠であると主張しています。 AmazonのElastic Compute Cloudを介して使用できます。
- Greenplum は、MapReduceとSQL。
- XML はまったくDBMSではなく、交換フォーマット。ただし、一部のDBMS製品はXML形式のデータを処理します。
- ODBMS 、またはオブジェクトデータベースは、複雑なデータを管理するためのものです。おそらく標準化の欠如のために、主流には支配的なODBMS製品はないようです。標準SQLは、いくつかのオブジェクト指向機能(拡張可能なデータ型やテーブルなど)を徐々に獲得しています。
- Drizzle はリレーショナルデータベースであり、MySQLから多くのコードを引き出しています。 。スケーラブルな「クラウドコンピューティング」でデータを管理するために設計されたさまざまなアーキテクチャの変更が含まれています。システムアーキテクチャー。おそらく、いくつかのMySQLの拡張機能を備えた標準SQLを引き続き使用します。
- Cassandra は、非常にスケーラブルで、最終的に一貫性のある、分散された、 Facebookで開発された構造化キーバリューストア
他のヒント
これまでの回答には、グラフデータベースがありません。オブジェクトのグラフまたはネットワークは、プログラミングでは一般的であり、データベースでも役立ちます。半構造化され相互接続された情報を効率的な方法で処理できます。グラフデータベースが大きな関心を集めている分野には、セマンティックウェブとバイオインフォマティクスがあります。 RDFが言及されましたが、実際にはグラフを表す言語です。グラフデータベース領域で何が起こっているかを示すポインタを次に示します。
- グラフ-より優れたデータベース抽象化
- グラフ、Freebaseのバックエンド
- Neo4jオープンソースグラフデータベースエンジン
- AllegroGraph RDFstore
- バイオインフォマティクスのGraphdb抽象化レイヤー
- Directed Edge推奨の背後にあるGraphdbエンジン
私は Neo4j プロジェクトの一部です。このプロジェクトはJavaで記述されていますが、Python、Ruby、Scalaにバインドされています同様に。 ClojureまたはGroovy / Grailsで使用する人もいます。 GUIツールも進化しています。
これに答えるのに最適な場所ではないかもしれませんが、Steve Yenによって作成されたnoSQLの世界の分類を共有したいと思います( http://de.slideshare.net/northscale/nosqloakland-200911021 )
-
キー値キャッシュ
- memcached
- repcached
- 一貫性
- インフィニスパン
- eXtreme scale
- jboss cache
- 速度
- terracoqa
-
キーバリューストア
- キースペース
- フレア
- スキーマフリー
- RAMCloud
-
最終的に一貫したキーバリューストア
- ダイナモ
- ヴォルデモート
- ダイノマイト
- サブレコード
- MongoDb
- Dovetaildb
-
順序付けられたキー値ストア
- tokyo tyrant
- lightcloud
- NMDB
- luxio
- memcachedb
- actord
-
データ構造サーバー
- redis
-
タプルストア
- ギガスペース
- coord
- apache river
-
オブジェクトデータベース
- ZopeDB
- db4o
- Shoal
-
ドキュメントストア
- CouchDB
- モンゴ
- Jackrabbit
- XMLデータベース
- ThruDB
- CloudKit
- Perservere
- Riak Basho
- Scalaris
-
幅の広い円柱ストア
- BigTable
- Hbase
- カサンドラ
- ハイパーテーブル
- KAI
- OpenNep
次世代データベースの分野で行われている学術研究については、次をご覧ください。 http ://www.thethirdmanifesto.com/
リレーショナルモデルの適切な実装としてのSQL言語に関しては、ウィキペディアから引用します。" SQLは、リレーショナルデータベースの標準言語として最初にプッシュされ、いくつかの場所でリレーショナルモデルから外れています。現在のISO SQL標準では、リレーショナルモデルについて言及されておらず、リレーショナル用語や概念を使用していません。ただし、特定のSQL機能を使用しない場合は、SQLを使用してリレーショナルモデルに準拠したデータベースを作成することができます。"
http://en.wikipedia.org/wiki/Relational_model ( 2010年3月28日のセクション「SQLとリレーショナルモデル」
教訓的ではないが、少なくともCouchDBはSQLベースではないことを指摘したい。そして、次世代のSQLによってSQLがはるかに少なくなることを期待しています... glyくて直感的ではありません。
MarkLogicやBerkeley XMLDBのようなXML用の特別なデータベースがあります。 xml-docsにインデックスを付け、XQueryでクエリできます。 JSONデータベースを期待しています。すでに存在している可能性があります。いくつかのグーグルはしましたが、見つかりませんでした。
SQLは1970年代初期から存在しているため、すぐになくなるとは思いません。
「new(-ish)sql」はoql( http://en.wikipediaを参照してください) .org / wiki / ODBMS )
ジムスターキーによるNimbusDBについても聞いた
ジムスターキーは、「作成」する人です。 Interbase
バルカン(Firebirdのフォーク)の作業者
およびFalcon for MySQLの最初にいたのは誰ですか